package com.netposa.config;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;

@Configuration
@ConfigurationProperties(
   prefix = "police.import"
)
public class ImportPoliceConfig {
   private static final Logger log = LoggerFactory.getLogger(ImportPoliceConfig.class);
   private Boolean open;
   private String interval;
   private Integer sleep;
   private Integer pageSize;
   private String defaultStartTime;
   private Boolean mqOpen;
   private String mqTopic;

   public Boolean getOpen() {
      return this.open;
   }

   public String getInterval() {
      return this.interval;
   }

   public Integer getSleep() {
      return this.sleep;
   }

   public Integer getPageSize() {
      return this.pageSize;
   }

   public String getDefaultStartTime() {
      return this.defaultStartTime;
   }

   public Boolean getMqOpen() {
      return this.mqOpen;
   }

   public String getMqTopic() {
      return this.mqTopic;
   }

   public void setOpen(Boolean open) {
      this.open = open;
   }

   public void setInterval(String interval) {
      this.interval = interval;
   }

   public void setSleep(Integer sleep) {
      this.sleep = sleep;
   }

   public void setPageSize(Integer pageSize) {
      this.pageSize = pageSize;
   }

   public void setDefaultStartTime(String defaultStartTime) {
      this.defaultStartTime = defaultStartTime;
   }

   public void setMqOpen(Boolean mqOpen) {
      this.mqOpen = mqOpen;
   }

   public void setMqTopic(String mqTopic) {
      this.mqTopic = mqTopic;
   }

   public boolean equals(Object o) {
      if (o == this) {
         return true;
      } else if (!(o instanceof ImportPoliceConfig)) {
         return false;
      } else {
         ImportPoliceConfig other = (ImportPoliceConfig)o;
         if (!other.canEqual(this)) {
            return false;
         } else {
            label95: {
               Object this$open = this.getOpen();
               Object other$open = other.getOpen();
               if (this$open == null) {
                  if (other$open == null) {
                     break label95;
                  }
               } else if (this$open.equals(other$open)) {
                  break label95;
               }

               return false;
            }

            Object this$interval = this.getInterval();
            Object other$interval = other.getInterval();
            if (this$interval == null) {
               if (other$interval != null) {
                  return false;
               }
            } else if (!this$interval.equals(other$interval)) {
               return false;
            }

            Object this$sleep = this.getSleep();
            Object other$sleep = other.getSleep();
            if (this$sleep == null) {
               if (other$sleep != null) {
                  return false;
               }
            } else if (!this$sleep.equals(other$sleep)) {
               return false;
            }

            label74: {
               Object this$pageSize = this.getPageSize();
               Object other$pageSize = other.getPageSize();
               if (this$pageSize == null) {
                  if (other$pageSize == null) {
                     break label74;
                  }
               } else if (this$pageSize.equals(other$pageSize)) {
                  break label74;
               }

               return false;
            }

            label67: {
               Object this$defaultStartTime = this.getDefaultStartTime();
               Object other$defaultStartTime = other.getDefaultStartTime();
               if (this$defaultStartTime == null) {
                  if (other$defaultStartTime == null) {
                     break label67;
                  }
               } else if (this$defaultStartTime.equals(other$defaultStartTime)) {
                  break label67;
               }

               return false;
            }

            Object this$mqOpen = this.getMqOpen();
            Object other$mqOpen = other.getMqOpen();
            if (this$mqOpen == null) {
               if (other$mqOpen != null) {
                  return false;
               }
            } else if (!this$mqOpen.equals(other$mqOpen)) {
               return false;
            }

            Object this$mqTopic = this.getMqTopic();
            Object other$mqTopic = other.getMqTopic();
            if (this$mqTopic == null) {
               if (other$mqTopic != null) {
                  return false;
               }
            } else if (!this$mqTopic.equals(other$mqTopic)) {
               return false;
            }

            return true;
         }
      }
   }

   protected boolean canEqual(Object other) {
      return other instanceof ImportPoliceConfig;
   }

   public int hashCode() {
      
      int result = 1;
      Object $open = this.getOpen();
      result = result * 59 + ($open == null ? 43 : $open.hashCode());
      Object $interval = this.getInterval();
      result = result * 59 + ($interval == null ? 43 : $interval.hashCode());
      Object $sleep = this.getSleep();
      result = result * 59 + ($sleep == null ? 43 : $sleep.hashCode());
      Object $pageSize = this.getPageSize();
      result = result * 59 + ($pageSize == null ? 43 : $pageSize.hashCode());
      Object $defaultStartTime = this.getDefaultStartTime();
      result = result * 59 + ($defaultStartTime == null ? 43 : $defaultStartTime.hashCode());
      Object $mqOpen = this.getMqOpen();
      result = result * 59 + ($mqOpen == null ? 43 : $mqOpen.hashCode());
      Object $mqTopic = this.getMqTopic();
      result = result * 59 + ($mqTopic == null ? 43 : $mqTopic.hashCode());
      return result;
   }

   public String toString() {
      return "ImportPoliceConfig(open=" + this.getOpen() + ", interval=" + this.getInterval() + ", sleep=" + this.getSleep() + ", pageSize=" + this.getPageSize() + ", defaultStartTime=" + this.getDefaultStartTime() + ", mqOpen=" + this.getMqOpen() + ", mqTopic=" + this.getMqTopic() + ")";
   }
}
